package com.spzx.order.service;

import com.spzx.order.domain.OrderInfo;
import com.baomidou.mybatisplus.extension.service.IService;
import com.spzx.order.form.OrderForm;
import com.spzx.order.vo.TradeVo;
import org.springframework.core.annotation.Order;

import java.util.List;

/**
 * <p>
 * 订单 服务类
 * </p>
 *
 * @author gax
 * @since 2025-09-29
 */
public interface IOrderInfoService extends IService<OrderInfo> {
    // 订单结算页相关参数的封装
    TradeVo trade();

    String generateTradeNo();

    Long submitOrder(OrderForm orderForm);

    OrderInfo saveOrder(OrderForm orderForm);

    TradeVo buy(Long skuId);

    List<OrderInfo> userOrderInfoList(Long userId, String orderStatus);

    void cancelOrder(Long orderId);
}
